package com.hy.controller;

import com.hy.Result.ResponseResult;
import com.hy.medicine.PhoneUser;
import com.hy.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * 用户管理控制器
 */
@RestController
@RequestMapping("/api/user")
public class UserController {

    @Autowired
    private UserService userService;

    /**
     * 获取用户信息
     * @param userId 用户ID
     * @return 用户信息
     */
    @GetMapping("/{userId}")
    public ResponseResult<PhoneUser> getUserInfo(@PathVariable("userId") Long userId) {
        PhoneUser user = userService.getUserById(userId);
        if (user == null) {
            return ResponseResult.errorResult(404, "用户不存在");
        }
        // 出于安全考虑，清除密码信息
        user.setPasswordHash(null);
        return ResponseResult.okResult(user);
    }

    /**
     * 根据手机号获取用户信息
     * @param phone 手机号
     * @return 用户信息
     */
    @GetMapping("/phone/{phone}")
    public ResponseResult<PhoneUser> getUserByPhone(@PathVariable("phone") String phone) {
        PhoneUser user = userService.getUserByPhone(phone);
        if (user == null) {
            return ResponseResult.errorResult(404, "用户不存在");
        }
        // 出于安全考虑，清除密码信息
        user.setPasswordHash(null);
        return ResponseResult.okResult(user);
    }
}
